PreviousNextTracker indexSee it online !

(205/314) 3560671 - FastOpen + MyDoggy: issues with dockable actions.

FastOpen behaves differently between my two environments. On my Window box, if I have nothing selected and hit my shortcut for FastOpen, it opens the dialog and gives focus to the filename box, just like I would expect. On my Linux box, if nothing is selected, nothing happens. No dialog pops up. Both machines work the same and correctly if a word is selected in the buffer, the dialog pops up if the name is ambiguous with the selected word in the filename, or it directly opens the file if the selected word is an unambiguous filename.

Both boxes are using latest FastOpen from plugin manager.

Here's the not working Linux config:
jEdit 5.0pre2 daily from 02-July-12
7:02:40 AM [main] [message] Log: java.version=1.7.0_05
7:02:40 AM [main] [message] Log: java.vm.version=23.1-b03
7:02:40 AM [main] [message] Log: java.vm.name=Java HotSpot(TM) 64-Bit Server VM
7:02:40 AM [main] [message] Log: java.runtime.version=1.7.0_05-b06
7:02:40 AM [main] [message] Log: java.runtime.name=Java(TM) SE Runtime Environment
7:02:40 AM [main] [message] Log: java.vendor=Oracle Corporation
7:02:40 AM [main] [message] Log: java.compiler=null
7:02:40 AM [main] [message] Log: os.name=Linux
7:02:40 AM [main] [message] Log: os.version=2.6.18-238.el5
7:02:40 AM [main] [message] Log: os.arch=amd64
...
7:02:41 AM [AWT-EventQueue-0] [debug] EditBus: PluginUpdate[what=LOADED,exit=false,version=2.5,source=/ln/home/snarum/.jedit/jars/FastOpen.jar,class=com.patelsoft.fastopen.FastOpenPlugin]


And here is the working Windows version:
jEdit 5.0pre1 downloaded 10-July-12 (I don't think it was a daily)
8:03:12 AM [main] [message] Log: java.version=1.7.0_05
8:03:12 AM [main] [message] Log: java.vm.version=23.1-b03
8:03:12 AM [main] [message] Log: java.vm.name=Java HotSpot(TM) Client VM
8:03:12 AM [main] [message] Log: java.runtime.version=1.7.0_05-b06
8:03:12 AM [main] [message] Log: java.runtime.name=Java(TM) SE Runtime Environment
8:03:12 AM [main] [message] Log: java.vendor=Oracle Corporation
8:03:12 AM [main] [message] Log: java.compiler=null
8:03:12 AM [main] [message] Log: os.name=Windows 7
8:03:12 AM [main] [message] Log: os.version=6.1
8:03:12 AM [main] [message] Log: os.arch=x86
...
8:03:13 AM [AWT-EventQueue-0] [debug] EditBus: PluginUpdate[what=LOADED,exit=false,version=2.5,source=C:\Users\snarum\AppData\Roaming\jEdit\jars\FastOpen.jar,class=com.patelsoft.fastopen.FastOpenPlugin]

Submitted snarum-micron - 2012-08-22 - 14:16:10z Assigned nobody
Priority 5 Category None
Status Open Group None
Resolution None Visibility No

Comments

2012-08-22 - 14:29:40z
snarum-micron
Interestingly, after filing the report, the Windows box is now doing the same as the Linux box... nothing. This definitely worked a moment ago, even after I sent this report, but now is not.
2012-08-22 - 15:14:47z
ezust
Is your shortcut for fastopen bound to the show-dockable action or the "show fast open dialog"?

2012-08-22 - 15:21:01z
ezust
Whatever action it is currently bound to, try binding your shortcut to the other (dockable vs dialog) and see if you have the same problem.
2012-08-22 - 17:46:42z
snarum-micron
On both machines, by shortcut was pointing to 'Fast Open'. I changed it to "Show Fast Open Dialog" and it now works repeatedly. I see four total things when I filter on 'fast' in the shortcut options dialog:
Fast Open (<== bug reported on this one)
Fast Open (new floating instance)
Fast Open (toggle)
Show Fast Open Dialog (<== seems to work with this one)

Perhaps it is just me that is confused as to the need for four, and how they differ.
2012-08-22 - 18:05:47z
ezust
I can not reproduce your issue on linux or windows with java 1.6.
I normally use the "Fast Open" action that brings a dockable (not a dialog).
Which means FastOpen can be docked or floating, just like any other dockable.
Anyway, the first 3 are for controlling the dockable version of FastOpen, and the last one is for opening a dialog, which is not dockable. Which one you use depends on your preference. I like the dockable version.
Jiger likes the dialog.

2012-08-22 - 18:25:20z
snarum-micron
OK, some more data is probably appropriate then. My original problem was using the dockable version with the dockable floating. I did not try it docked. I just tried it now, by switching my shortcut back to 'Fast Open', and selecting the FastOpen to be docked Top. Now when I hit my keystroke, the Fast Open dialog pops up ever time. Note, I did not say that the dockable opens, I said the dialog pops up, floating. The usual buttons across the top when you have a floating dockable are not present. Dragging it into a docking area does not work. Etc.

That brings up one more point, I am using MyDoggy for docking. I just turned it off, with no change in behavior.

Nothing changed this until I reloaded FastOpen using Activator plugin. Once I did, the dockable immediately appeared docked at the top like I told it to. It seems to work this way (other than being docked, which I don't like.) I then put it back to floating and the problem immediately reappeared (no reload of fast open required.)
2012-08-22 - 18:47:05z
ezust
I can't reproduce any of your problems if I am not using MyDoggy. Are you sure you see no difference?
I am going to change the subject to indicate this is a FastOpen+MyDoggy issue.
Did you really restart jEdit after selecting classic dockables to verify that you really are not using MyDoggy and *really* have the same problems?

I just tried opening the FastOpen Dockable in mydoggy, it was initially floating. Then I tried to dock it to the top.
Then I invoked the FastOpen action again and got this stacktrace below.

I don't think this is the same bug you had, but it does demonstrate that all is not right with MyDoggy + FastOpen.


java.lang.RuntimeException: java.lang.NullPointerException
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate.saveInternal(XMLPersistenceDelegate.java:150)
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate.save(XMLPersistenceDelegate.java:79)
at org.noos.xing.mydoggy.plaf.MyDoggyToolWindowBar.setToolsVisible(MyDoggyToolWindowBar.java:184)
at myDoggy.MyDoggyWindowManager.closeCurrentArea(MyDoggyWindowManager.java:159)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.gjt.sp.jedit.bsh.Reflect.invokeMethod(Reflect.java:134)
at org.gjt.sp.jedit.bsh.Reflect.invokeObjectMethod(Reflect.java:80)
at org.gjt.sp.jedit.bsh.Name.invokeMethod(Name.java:855)
at org.gjt.sp.jedit.bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at org.gjt.sp.jedit.bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at org.gjt.sp.jedit.bsh.BSHBlock.eval(BSHBlock.java:80)
at org.gjt.sp.jedit.bsh.BshMethod.invokeImpl(BshMethod.java:362)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:258)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:186)
at org.gjt.sp.jedit.BeanShellFacade.runCachedBlock(BeanShellFacade.java:225)
at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:423)
at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:73)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:342)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:307)
at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:196)
at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:401)
at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:151)
at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4721)
at java.awt.Component.processEvent(Component.java:6045)
at java.awt.Container.processEvent(Container.java:2045)
at java.awt.Component.dispatchEventImpl(Component.java:4629)
at java.awt.Container.dispatchEventImpl(Container.java:2103)
at java.awt.Component.dispatchEvent(Component.java:4455)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1860)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:759)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1035)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:902)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:724)
at java.awt.Component.dispatchEventImpl(Component.java:4499)
at java.awt.Container.dispatchEventImpl(Container.java:2103)
at java.awt.Window.dispatchEventImpl(Window.java:2517)
at java.awt.Component.dispatchEvent(Component.java:4455)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
at java.awt.EventQueue.access$000(EventQueue.java:96)
at java.awt.EventQueue$1.run(EventQueue.java:608)
at java.awt.EventQueue$1.run(EventQueue.java:606)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
at java.awt.EventQueue$2.run(EventQueue.java:622)
at java.awt.EventQueue$2.run(EventQueue.java:620)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
Caused by: java.lang.NullPointerException
at org.noos.xing.mydoggy.plaf.ui.cmp.FloatingFrame.getDockableCount(FloatingFrame.java:274)
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate.storeMultiSplitWindow(XMLPersistenceDelegate.java:194)
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate$ToolWindowManagerElementWriter.write(XMLPersistenceDelegate.java:262)
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate$ToolWindowManagerElementWriter.write(XMLPersistenceDelegate.java:225)
at org.noos.xing.mydoggy.plaf.persistence.xml.XMLPersistenceDelegate.saveInternal(XMLPersistenceDelegate.java:146)
... 59 more
2012-08-22 - 18:55:27z
ezust
Another interesting problem with FastOpen+MyDoggy : if I have 2 views open, and I select "FastOpen", nothing happens from one of the Views. I can only open the dockable from one of the views. The Dialog action works fine though.

2012-08-22 - 19:19:46z
snarum-micron
OK, when I reported before that I had disabled MyDoggy, I did so by changing the selection in the Options->Docking dialog to Original. I did not restart. I just restarted with the setting to Original, verified using Activator that MyDoggy is not loaded, and I cannot reproduce the issue.

Attachments